package com.lhl.shiro.shiroconfig;

/**
 * @author LHL
 * @date 2018/1/10
 */
public class PasswordHelper {
//    private static final Logger LOGGER = LoggerFactory.getLogger(PasswordHelper.class);
//    private RandomNumberGenerator randomNumberGenerator = new SecureRandomNumberGenerator();
//    private static final String ALGORITHM_NAME = "MD5";
//    private static final int HASH_ITERATIONS = 2;
//
//    public void encryptPassword(IotUser user) {
//
//        user.setSalt(randomNumberGenerator.nextBytes().toHex());
//
//        String newPassword = generateEncryptPassword(user.getPassword(), user.getSalt());
//
//        user.setPassword(newPassword);
//    }
//
//    /**
//     * @param password 需要被验证的密码
//     * @param user     用户
//     */
//    public boolean validPasswordEqual(String password, IotUser user) {
//        LOGGER.debug("[验证密码是否相等]");
//        String encryptPassword = generateEncryptPassword(password, user.getSalt());
//        if (encryptPassword.equals(user.getPassword())) {
//            LOGGER.debug("[密码正确]");
//            return true;
//        }
//        LOGGER.debug("[验证错误]");
//        return false;
//    }
//
//    private String generateEncryptPassword(String password, String salt) {
//        if (salt == null) {
//            return new SimpleHash(
//                    ALGORITHM_NAME,
//                    password, null,
//                    HASH_ITERATIONS).toHex();
//        } else {
//            return new SimpleHash(
//                    ALGORITHM_NAME,
//                    password,
//                    ByteSource.Util.bytes(salt),
//                    HASH_ITERATIONS).toHex();
//        }
//    }
}
